Detection of the position of a location of a sound source is important for many services and applications. For example, in an audiovisual teleconferencing application, improved performance can be achieved by detecting the position of the speaker for example by enhancing the speech signal through beamforming techniques, using the estimated speaker position to steer the beam. As another example the video may be enhanced, e.g. by zooming in on the estimated speaker position.).
Accordingly systems and algorithms for estimating a sound source location have been developed. Specifically, it has been proposed to use particle filtering techniques to estimate and track sound source positions. Particle filtering seeks to estimate the value of a state variable reflecting the current state of a system for consecutive time instants. For example, the particle filter may seek to estimate the value of a state variable representing a sound source position. However, rather than merely consider a single value or estimate, particle filtering considers a probability density for the state variable at each time instant. Particle filtering is based on a sequential approach wherein the state variable value for a given (sample) time instant is determined on the basis of the state variable value at the previous (sample) time instant. As the state variable at a time instant is represented by its probability density function (thus reflecting the uncertainty in the knowledge/estimation of the state variable value), this in principle involves determining the probability density function at the time instant from the probability density function of the previous time instant.
However, in many scenarios this is not analytically practical, feasible or even possible. For example, for non-linear systems with non-Gaussian noise, the calculation of the probability density function at a given time instant based on the probability density function at the previous time instant is not feasible. Particle filtering resolves this problem by representing the probability density function by a set of particles wherein each particle represents a possible value of the state variable. The probability density function at a given time instant is then determined by calculating an updated state variable value of each particle of the previous time instant based on a known state variable update function. The update of the particle may furthermore add noise in accordance with a suitable noise profile.
Furthermore, each particle has an associated weight which represents a likelihood measure for the particle. The weight of a particle is modified in the update from one time instant to the next based on a measurement of the system. Thus, it is assumed that a measurement value can be estimated or calculated from the state variable value (e.g. by a measurement function). This relationship may specifically include a noise contribution in accordance with a known (or assumed) noise profile. Accordingly, the weight of a particle may be modified as a function of the update. In particular, if the actual measurement made has a relatively high probability of resulting from the updated state variable value (as evaluated using the measurement function), the weight of the particle is increased relatively to the previous weight. Conversely, if the actual measurement made has a relatively low probability of resulting from the updated state variable value, the weight of the particle is reduced relatively to the previous weight.
Thus, as part of the particle update from one time instant to the next, the weight of the particles are modified to reflect how likely the given particle is to result in the new measurement. Thus, the weights are continuously updated to reflect the likelihood that the individual particle corresponds to the actual state value resulting in the measurement values.
Thus, in particle filtering each particle may be considered a discrete sample of the probability density function of the state variable.
The weights will typically converge towards the probability density function for the state variable. However, the particle filtering approach may often result in the weights degenerating such that a large number of weights end up having very small values whereas others have large values. In other words, the particle filtering may result in the information being concentrated in a relatively low proportion of the particles. In order to address this problem, resampling may be performed where new samples are generated that provide a more even distribution of sample particles. This approach corresponds to an importance sampling approach and will result in more particles being concentrated in areas for which the probability density function has a relatively high value and fewer particles being in areas wherein the probability density function has lower values.
As a specific example, resampling may be performed by calculating an average weight per particle and then generating a new set of particles with each particle being assigned this weight. However, this new set of particles will be distributed to reflect the previous weights of the particles. As a specific example each particle may be split into a number of particles with (approximately) the same state variable value with the number of new samples being given as the weight of the particle divided by the average weight. This will furthermore result in a large number of particles being deleted from the set of particles (and being replaced by duplicate particles for particles with above average weight).
Thus, at any given instant the probability density function for the state variable is represented by the particles and specifically is represented by a combination of the distribution of the particles (i.e. the importance sampling of their state variable values) and their weight.
A single estimate for the state variable value can then be determined by the summation of the particle values with each value being weighted by the particle weight. Thus, the state variable is estimated from integration (weighted summation) of the discrete sampled probability density function (with each sample corresponding to a particle).
More information on particle filtering can e.g. be found in M. Sanjeev Arulampalam, et. al., “A Tutorial on Particle Filters for Online Nonlinear/Non-Gaussian Bayesian Tracking”, IEEE Transactions On Signal Processing, vol. 50, no. 2, February 2002.
However, a problem with particle filtering is that a sufficiently accurate update of the weights of the particles is critical for obtaining sufficiently reliable results. Indeed, for sound source location, the adaptation of the particle weights and distribution is heavily dependent on suitable measurements and measurement functions that accurately reflect the relationship between the state variable and the real sound source position. However, most currently applied measurement techniques and functions tend to result in suboptimal results.
Hence, improved sound source location estimation using particle filtering would be advantageous and in particular an approach allowing increased flexibility, reduced complexity, increased accuracy and/or improved performance would be advantageous.